//		Written by Don Yacktman Copyright (c) 1994 by Don Yacktman.
//				Version 1.0.  All rights reserved.
//
//		This notice may not be removed from this source code.
//
//	This program is included in the MiscKit by permission from the author
//	and its use is governed by the MiscKit license, found in the file
//	"LICENSE.rtf" in the MiscKit distribution.  Please refer to that file
//	for a list of all applicable permissions and restrictions.
//	


#import "Line.h"

@implementation Line

- setStart:(NXPoint *)s end:(NXPoint *)e
{
	start.x = s->x;
	start.y = s->y;
	end.x = e->x;
	end.y = e->y;
	return self;
}

- render
{
	PSmoveto(start.x, start.y);
	PSlineto(end.x, end.y);
	PSstroke();
	return self;
}

- renderIfInRect:(const NXRect *)aRect
{
	NXRect tempRect = { { MIN(start.x, end.x), MIN(start.y, end.y) },
		{ MAX(ABS(start.x-end.x), 0.001), MAX(ABS(start.y-end.y), 0.001) } };
	if (NXIntersectsRect(aRect, &tempRect)) {
		[self render];
	}
	return self;
}

@end
